#include"GameModel.h"
#include <time.h>
#include <stdlib.h>

void GameModel::actionByAI(int &clickRow,int &clickCol)
{
    //计算评分
    calculateScore();

    //从评分中找出最大分数的位置
    int maxScore = 0;
    std::vector<std::pair<int,int>>maxPoints;

    for(int row = 1;row < BOARD_GRAD_SIZE;row++)
    {
        for(int col = 1;col < BOARD_GRAD_SIZE;col++)
        {
            //前提是这个坐标是空的
            if(gameMapVec[row][col] == 0)
            {
                if(scoreMapVec[row][col] > maxScore)//找最大的数和坐标
                {
                    maxPoints.clear();
                    maxScore = scoreMapVec[row][col];
                    maxPoints.push_back(std::make_pair(row,col));
                }
                else if(scoreMapVec[row][col] ==maxScore)//如果有多个最大的数，就都存起来
                {
                    maxPoints.push_back(std::make_pair(row,col));
                }
            }
        }
    }

    //如果有多个点，随机落子
    srand((unsigned)time(0));
    int index = rand()%maxPoints.size();
}

